package com.ideaaedi.springcloud.jd.commonspring.mybatisplus.tenant;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
 * 租户和数据范围注解
 * <p>
 * 支持指定 租户、可读数据范围、可写数据范围
 *
 * @author <font size = "20" color = "#3CAA3C"><a href="https://gitee.com/JustryDeng">JustryDeng</a></font> <img
 * src="https://gitee.com/JustryDeng/shared-files/raw/master/JustryDeng/avatar.jpg" />
 * @since 2021.0.5.B
 */
@Target(value = ElementType.METHOD)
@Retention(value = RetentionPolicy.RUNTIME)
public @interface TenantDataScope {
    
    /**
     * 租户信息
     * <p>
     * 格式为：租户值|可读数据范围jsonArray|可写数据范围jsonArray
     * <p>
     * 支持spel. spel示例："#{#user.id + ':' + #user.username}"）
     */
    String value();
}
